package com.chuangjiangx.member.basic.ddd.domain.model.msg;

import com.chuangjiangx.commons.wx.msg.model.AbstractBaseData;
import com.chuangjiangx.commons.wx.msg.model.Keyword4Data;
import com.chuangjiangx.commons.wx.msg.model.MsgDataMeta;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author cj-ch
 * @date 2018/1/31 上午11:19
 * 会员注册成功通知
 *
 *  详细内容
        {{first.DATA}}
        手机号：{{keyword1.DATA}}
        会员编号：{{keyword2.DATA}}
        注册时间：{{keyword3.DATA}}
        {{remark.DATA}}
    内容示例
        会员注册成功！注册信息如下：
        手机号：13800138000
        会员编号：10008
        注册时间：2014年7月21日 18:36
        谢谢您的支持！请使用手机号在APP登录！
 */
@Data
public class MbrRegistryMsg  extends AbstractMbrWXMsg {
    /**
     * 标题
     *
     */
    private String title = "您好,您已成功注册.";
    /**
     * 手机号
     */
    private String mobile;
    /**
     * 会员编号
     */
    private String cardNumber;
    /**
     * 注册时间
     */
    private Date registryTime;
    /**
     * 备注
     */
    private String remark = "感谢您的使用";

    public MbrRegistryMsg(String mobile, String cardNumber, Date registryTime) {
        this.mobile = StringUtils.defaultIfBlank(mobile,"-");
        this.cardNumber = cardNumber;
        this.registryTime = registryTime;
    }

    @Override
    public AbstractBaseData toMsgData(){
        Keyword4Data data = new Keyword4Data();
        data.setFirst(new MsgDataMeta(title));
        //获取时间
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        data.setKeyword1(new MsgDataMeta(mobile));
        data.setKeyword2(new MsgDataMeta(cardNumber));
        data.setKeyword3(new MsgDataMeta(format.format(registryTime)));
        data.setRemark(new MsgDataMeta(remark));
        return data;
    }

    @Override
    public WXMsg getWXMsg() {
        return WXMsg.MBR_REGISTRY;
    }
}
